package com.nosnow.oss.utils;

import org.springframework.beans.factory.InitializingBean;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;

/**
 * @author by bingHeng
 * @version 1.0
 * @Create 2020/4/3 23:39
 *
 * 常量属性读取的工具类
 */



@Component
public class ConstantPropertiesUtils implements InitializingBean {

    // 读取配置文件中的内容，,由于该类中的属性全部为private 私有，所有需要实现spring的一个接口，当项目启动后会执行接口中的一个方法

    @Value("${aliyun.oss.file.endpoint}")
    private String endpoint;

    @Value("${aliyun.oss.file.keyid}")
    private String keyId;

    @Value("${aliyun.oss.file.keysecret}")
    private String keySecret;

    @Value("${aliyun.oss.file.bucketname}")
    private String bucketName;

    // 定义公开静态常量, 让外部可以访问到这些常量的值
    public static String END_POINT;

    public static String ACCESS_KEY_ID;

    public static String ACCESS_KEY_SECRET;

    public static String BUCKET_NAME;

    // 拼接上传到oss的路径
    public static String URL;


    @Override
    public void afterPropertiesSet() throws Exception {
        END_POINT = endpoint;
        ACCESS_KEY_ID = keyId;
        ACCESS_KEY_SECRET  = keySecret;
        BUCKET_NAME = bucketName;
        URL = "https://" + bucketName + "." + endpoint + "/";
    }
}
